The present invention relates to data networking and more particularly, in certain embodiments, to systems and methods for preempting lower priority traffic.
MPLS (Multi-Protocol Label Switching) Traffic Engineering has been developed to meet data networking requirements such as guaranteed available bandwidth. MPLS Traffic Engineering exploits modern label switching techniques to build guaranteed bandwidth end-to-end tunnels through an IP network of labels switched routers (LSRs). These tunnels are a type of label switched path (LSP) and thus are generally referred to as MPLS Traffic Engineering LSPs.
MPLS Traffic Engineering LSPs traverse a series of nodes and links that interconnect them. To maintain the bandwidth guarantee, any given link can only accommodate MPLS Traffic Engineering LSPs having an aggregate bandwidth less than or equal to that link's advertised capacity. To better manage available bandwidth, MPLS Traffic Engineering LSPs may be assigned priority levels based on, e.g. their traffic type. For example, there may be eight priority levels with voice traffic being given a relatively high priority level. Priority levels may also be determined based on customer service level agreements (SLAs). Priorities may also be assigned based on the LSP size to increase the likelihood of finding a path.
A new traffic engineering LSP is established by way of signaling from the proposed LSP's head-end. Nodes along the proposed LSP's path will determine whether or not to admit or accept the proposed LSP based on available bandwidth on the link to the next node. It may be the case, however, that although there is insufficient unused bandwidth to accommodate the new LSP, some of the currently configured traffic is lower priority than the new LSP.
Existing implementations provide for hard preemption by default in such cases. The node that lacks sufficient bandwidth to accommodate a new higher priority Traffic Engineering LSP simply tears down one or more lower priority LSPs to free up sufficient bandwidth. Traffic on the preempted LSPs is disrupted until they are rerouted at their head-ends. Soft preemption algorithms have also been developed where the head-end is signaled before the preempted LSP is torn down by the preempting node. Although bandwidth limits may be temporarily exceeded under soft preemption, there is now time for the head-end to reroute the preempted LSP before traffic is disrupted.
The existing preemption techniques have drawbacks. Consider that preemption of lower priority LSPs may occur at multiple nodes along the path of a proposed new LSP. Some of the lower priority LSPs that are candidates for preemption may follow paths that overlap the path of the preempting LSP at more than one node. Each preempting node, however, independently determines which lower priority LSP(s) to preempt. The preemption algorithms and their inputs may however vary among the preempting nodes leading to inconsistent choices. Because each preempting node is unaware of the choices of the other preempting nodes, more bandwidth may be preempted than is necessary. Also, since a larger number of preempted LSPs than is necessary require rerouting, there is an undue signaling burden.
The distributed but uncoordinated nature of the preemption processes raises another difficulty. Multiple nodes along the path of a proposed LSP may preempt the same lower priority LSP. However, the head-end of the lower priority LSP may begin its reroute in reaction to the first indication of preemption. The computation of a new path will thus not take into account that in fact multiple nodes along the old path are now unavailable rather than the one node which first reported preemption. The head-end may then inadvertently attempt to reroute the path through congested nodes, resulting in rejection of the proposed reroute and further burdensome signaling to accomplish successful rerouting.
What is needed are systems and methods that address the above-mentioned drawbacks of current MPLS Traffic Engineering preemption techniques.